Spring可以說是目前Java開發人員在實務使用上最流行的應用程式開發框架之一,自2004年3月Spring 1.0版本發佈至今已有18年,在這過程中 Spring不斷拓展相關技術應用,進而打造了一套屬於自己的生態圈,像是Spring Security、Spring Cloud、Spring Data以及本篇文章的主角Spring Boot等等,那究竟為何Spring會額外衍伸出Spring Boot呢?
相信有使用過Spring框架的人都知道,在建置專案初期會需要寫許多麻煩又冗長的XML組態,並需要搭配額外的Application Server來部署專案,基於上述原因,Spring Boot就是利用自主的starter來簡化Spring的組態及配置,並嵌入Tomcat、Jetty等Application Server,加上自動化配置Spring及相關的第3方Library,進而達成快速開發的目的。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
而在前幾篇的文章中有提到,基於公司想將專案部署至雲端的想法,我們的專案是使用Google Cloud Platform(GCP)上的Google Container Engine(GKE)服務,透過Harbor將專案上傳到Google Container Registry(GCR)中,藉由Kubernetes部屬專案,而Spring Boot簡單的配置是目前JAVA在開發Web應用程式及Micro-Service應用程式時是最快方法之一,所以選擇Spring Boot與GKE做搭配,以至於達到方便管理Docker及快速開發的目的。